package com.settlement.system.model.vo.oms;

import lombok.Data;
import org.apache.ibatis.ognl.Ognl;
import org.apache.ibatis.ognl.OgnlException;

import java.io.Serializable;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;

/**
 * OMS订单详情
 */
@Data
public class OMSOrder implements Serializable {
    // OMS单号
    private String omsNo;
    // 主单号（网店交易号）
    private String mainOrderNo;
    // 子单号（子交易号）
    private String subOrderNo;
    // 店铺
    private String storeName;
    // 状态
    private String status;
    // 下单时间
    private String orderTime;
    // 付款时间
    private String payTime;
    // 发货时间
    private String sendTime;
    // SKU
    private String sku;
    // 商品名称
    private String productName;
    // 商品数量
    private String qty;
    // 均摊金额
    private String price;


    public static void main(String[] args) {
        // System.out.println(Arrays.stream("单据类型的测试的测试".split("的", 2)).toList());
        // 测试Ognl表达式
        String sku1 = "否(从第三方)gdgdfgdfg";
        String sku2 = "testSku456";
        String omsNo = "123";
        Map<String, String> context = new HashMap<>();
        context.put("单据类型的测试", sku1);
        context.put("sku2", sku2);
        context.put("omsNo", omsNo);
        String expression = "单据类型的测试.contains(\"否(从第三方)g\") && omsNo == '123'";
        try {
            Boolean result = (Boolean) Ognl.getValue(expression,context);
            System.out.println("答案："+ result);
        } catch (OgnlException e) {
            e.printStackTrace();
        }
    }
}
